package cn.qf.v1;

public class Car {
    // 车名
    private String name;

    // 品牌
    private String brand;

    // 油量
    private int oil = 20;

    // 损耗度
    private int loss = 0;

    /*
    构造器的形参列表的确定原则：
    1、私有但不允许被 setter 方法所修改的成员属性（即该属性的值在对象一旦被实例出之后就不允许变更，如品牌 brand）
    2、必要但未提供任何初始值的成员属性，如车名 name
     */
    public Car(String name, String brand) {
        this.name = name;
        this.brand = brand;
    }

    public Car(String name, String brand, int oil, int loss) {
        this(name, brand);

        this.oil = oil;
        this.loss = loss;
    }

    public String getName() {
        return name;
    }

    // 从租车的行为出发，一输车的车名在履行完租车手续后，也不应该被修改
    // 即，使用场景不同，属性的读写权限也会不同
//    public void setName(String name) {
//        this.name = name;
//    }

    public String getBrand() {
        return brand;
    }

    public int getOil() {
        return oil;
    }

    public void setOil(int oil) {
        this.oil = oil;
    }

    public int getLoss() {
        return loss;
    }

    public void setLoss(int loss) {
        this.loss = loss;
    }

    public void show() {
        System.out.println("=====轿车=====");
        System.out.println("车名：" + name);
        System.out.println("品牌：" + brand);
        System.out.println("油量：" + oil);
        System.out.println("损耗度：" + loss);
        System.out.println("=============");
    }

}
